package com.scholarship.system.service;

import com.scholarship.system.common.dto.Result;

import java.util.List;
import java.util.Map;

/**
 * 科研能力评分服务接口
 */
public interface ResearchService {

    /**
     * 获取科研评分列表
     * 
     * @param advisorId 导师ID，如果为null则获取所有学生
     * @param keyword   关键字搜索（学号/姓名）
     * @param year      评定年份
     * @param semester  评定学期
     * @return 科研评分列表
     */
    Result<List<Map<String, Object>>> getResearchScoreList(Long advisorId, String keyword, Integer year,
            String semester);

    /**
     * 获取科研评分详情
     * 
     * @param studentId 学生ID
     * @param year      评定年份
     * @param semester  评定学期
     * @return 科研评分详情
     */
    Result<Map<String, Object>> getResearchScoreDetail(Long studentId, Integer year, String semester);

    /**
     * 保存科研评分
     * 
     * @param params 包含评分信息的参数
     * @return 结果
     */
    Result<Void> saveResearchScore(Map<String, Object> params);
}